package trouger.dmt;

/**
 * The interface is used to output result records in the reduce phase.
 */
public interface RecordOutputer{
	/**
	 * Collect a record into reducer output.
	 * @param record the record to collect, in which record[1] is the first field value.
	 */
	public void output(Object[] record);
	/**
	 * Specify an {@link OutputRecordFilter} to filter every outgoing record.
	 * @param filter an {@link OutputRecordFilter}
	 */
	public void setOutputRecordFilter(OutputRecordFilter filter);
	/**
	 * Get the specified {@link OutputRecordFilter}.
	 * @return the filter, or null if not specified.
	 */
	public OutputRecordFilter getOutputRecordFilter();
}
